package com.mzz.structure.proxy.proxysbject;

/**
 *
 * <p>
 * Proxy:代理主题角色，也叫委托类、代理类（如律师）
 * 它把所有抽象主题类定义的方法给具体主题主题橘色实现
 * *** 并且在具体主题角色执行完毕前后做预处理和善后工作。
 * <p>
 * （简单的打印日志）
 * <p>
 * @author xushijian
 * @date 18/5/29 上午9:53
 */
public class Proxy implements Subject {


    private Subject subject;

    public Proxy(Subject subject) {
        this.subject = subject;
    }

    public void operate() {

        System.out.println("执行方法前的预处理工作...");
        subject.operate();
        System.out.println("执行方法完毕后执行的操作<可记录日志>");

    }
}
